﻿using MediatR;
using SmartProduction.Domain;
using SmartProduction.ErrorCode;

namespace SmartProduction.Write.API.Application.Commands.BomCommand
{
    /// <summary>
    /// 添加BOM命令
    /// </summary>
    public class BomCreateCommand:IRequest<APIResult<Object>>
    {
        public int BomId {  get; set; }
        /// <summary>
        /// BOM编码
        /// </summary>
        public string BomNode { get; set; }
        /// <summary>
        /// BOM主题
        /// </summary>
        public string Bomtitle { get; set; }
        /// <summary>
        /// 默认BOM
        /// </summary>
        public string DefaultBom { get; set; }
        /// <summary>
        /// 版本
        /// </summary>
        public string Version { get; set; }
        /// <summary>
        /// 成品类型
        /// </summary>
        public string FinishedType { get; set; }
        /// <summary>
        /// 成品名称
        /// </summary>
        public string FinishedName { get; set; }
        /// <summary>
        /// 日产量
        /// </summary>
        public int DailyProduction { get; set; }
        /// <summary>
        /// 预估成本
        /// </summary>
        public int? EstimatedCost { get; set; }
        /// <summary>
        ///当前库存
        /// </summary>
        public string? CurrentInventory { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        public string Notes { get; set; }
        /// <summary>
        /// 创建人
        /// </summary>
        public int? CreatedBy { get; set; }
        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime? CreatedTime { get; set; }
        /// <summary>
        /// 修改人
        /// </summary>
        public int? UpdatedBy { get; set; }
        /// <summary>
        /// 修改时间
        /// </summary>
        public DateTime? UpdatedTime { get; set; }
        /// <summary>
        /// BOM配件
        /// </summary>
        public List<BomParts> parts { get; set; }
        /// <summary>
        /// 工序
        /// </summary>
        public List<ProcessInfo> process { get; set; }
    }
}
